<?php
namespace App\Library\Common;

/**
 * 验证类
 * @author Administrator
 */
class Validate
{
	/**
	 * 验证字符长度
	 * @param string $str 字符串
	 * @param string $len 长度(1,[2])
	 */
	public static function length($str, $len) {
		$length = strlen($str);
		$len = explode(',', $len);
		if (isset($len['1'])) {
			// 范围验证
			return $length >= $len['0'] && $length <= $len['1'] ? true : false;
		} else {
			// 单项验证
			return $length >= $len['0'] ? true : false;
		}
	}
	/**
	 * 验证字符长度
	 * @param string $str 字符串
	 * @param string $len 长度(1,[2])
	 */
	public static function lengths($str, $min, $max = null) {
		$length = strlen($str);
		if ($max) {
			// 范围验证
			return $length >= $min && $length <= $max ? true : false;
		} else {
			// 单项验证
			return $length >= $min ? true : false;
		}
	}
	/**
	 * 验证数字范围
	 * @param 数字 $int
	 * @param 最小值 $min
	 * @param 最大值 $max
	 * @return boolean
	 */
	public static function maxMin($int, $min, $max = null) {
		if (is_numeric($int)) {
			if ($max) {
				// 范围验证
				return $int >= $min && $int <= $max ? true : false;
			} else {
				// 单项验证
				return $int >= $min ? true : false;
			}
		} else {
			return false;
		}
	}
	/**
	 * 验证数字范围
	 * @param 数字 $int
	 * @param 最小值 $min
	 * @param 最大值 $max
	 * @return boolean
	 */
	public static function number($int, $min, $max = null) {
		if (is_numeric($int)) {
			if ($max) {
				// 范围验证
				return $int >= $min && $int <= $max ? true : false;
			} else {
				// 单项验证
				return $int >= $min ? true : false;
			}
		} else {
			return false;
		}
	}
	/**
	 * 验证邮箱
	 */
	public static function isEmail($email) {
		return preg_match("/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/", $email);
	}
	/**
	 * 验证手机
	 */
	public static function isMobile($mobile) {
		return preg_match("/^1[34578][0-9]{9}$/", $mobile);
	}
}
?>